package com.wicket.okrapp.integration.dto;

import com.wicket.okrapp.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * @desc AutoBuildTopAndMidAndGrassReqDto
 * @使用场景
 */
@Data
public class AutoBuildTopAndMidAndGrassReqDto
  extends BaseDto
  implements Serializable {

  /**
   * 周期模式类型编码 FATHER_SON_CYCLE:父子周期 SINGLE_CYCLE:单周期 IRREGULAR_CYCLE:不规则周期
   */
  @NotNull(message = "周期模式类型编码不能为空")
  @ApiModelProperty("周期模式类型编码")
  private String periodicModeTypeCode;

  /**
   * 是否首次批次 TRUE:是 FALSE:否
   */
  @ApiModelProperty("是否首次批次")
  private String isFirst;

  /**
   * 目标周期任务进展状态 NOT_AT_THE:未开始 ONGOING:进行中 HAS_ENDED:已结束
   */
  @ApiModelProperty("目标周期任务进展状态")
  private String taskStatus;

  /**
   * 主体生命周期 CURRENTLY_VALID:当前有效 EDITING:正在编辑 ARCHIVING:历史存档
   */
  @ApiModelProperty("主体生命周期")
  private String subjectLifeCycle;

  /**
   * 存档类型 NOT_ARCHIVE:未归档 TOBE_ARCHIVING:想归档 ARCHIVED:已归档
   */
  @ApiModelProperty("存档类型")
  private String archivngType;

  /**
   * 创建人就职记录ID
   */
  @ApiModelProperty("创建人就职记录ID ")
  private String createInductionId;

  /**
   * 创建于空间ID
   */
  @ApiModelProperty("创建于空间ID")
  private String spaceId;

  /**
   * 创建于联盟应用ID
   */
  @ApiModelProperty("创建于联盟应用ID")
  private String appId;

}
